﻿
using System;
using System.Runtime.Serialization;
using V82;
using V82.Перечисления;//Ссылка;
namespace V82.Перечисления//Ссылка
{
	///<summary>
	///(Общ)
	///</summary>
	[DataContract]
	public enum СтатусыМатериальныхЗатратНаПроизводство
	{
		[NonSerialized]
		ПустаяСсылка = - 1,
	///<summary>
	///(Общ)
	///</summary>
		[EnumMember(Value = "{\"Ссылка\":\"942fbf87-6d11-4acd-87a0-24ee921621ab\", \"Представление\":\"Собственные\"}")]
		Собственные = 0,
	///<summary>
	///(Общ)
	///</summary>
		[EnumMember(Value = "{\"Ссылка\":\"c72c2430-438c-4586-a788-2e0f8c0698ae\", \"Представление\":\"ПринятыеВПереработку\"}")]
		ПринятыеВПереработку = 1,//Принятые в переработку
	///<summary>
	///(Общ)
	///</summary>
		[EnumMember(Value = "{\"Ссылка\":\"9c5943b3-4c58-474f-a4a4-b5ace09e4bbc\", \"Представление\":\"ВозвратныеОтходы\"}")]
		ВозвратныеОтходы = 2,//Возвратные отходы
	}
	public static partial class СтатусыМатериальныхЗатратНаПроизводство_Значения//:ПеречислениеСсылка
	{
		///<summary>
		///(Общ)
		///</summary>
		public static readonly Guid Собственные = new Guid("ee24a087-1692-ab21-4acd-6d11942fbf87");
		///<summary>
		///(Общ)
		///</summary>
		public static readonly Guid ПринятыеВПереработку = new Guid("0f2e88a7-068c-ae98-4586-438cc72c2430");//Принятые в переработку
		///<summary>
		///(Общ)
		///</summary>
		public static readonly Guid ВозвратныеОтходы = new Guid("acb5a4a4-9ee0-bc4b-474f-4c589c5943b3");//Возвратные отходы
		public static СтатусыМатериальныхЗатратНаПроизводство Получить(this СтатусыМатериальныхЗатратНаПроизводство Значение, byte[] Ссылка)
		{
			return Получить(Значение, new Guid(Ссылка));
		}
		public static СтатусыМатериальныхЗатратНаПроизводство Получить(this СтатусыМатериальныхЗатратНаПроизводство Значение, Guid Ссылка)
		{
			if(Ссылка == Собственные)
			{
				return СтатусыМатериальныхЗатратНаПроизводство.Собственные;
			}
			else if(Ссылка == ПринятыеВПереработку)
			{
				return СтатусыМатериальныхЗатратНаПроизводство.ПринятыеВПереработку;
			}
			else if(Ссылка == ВозвратныеОтходы)
			{
				return СтатусыМатериальныхЗатратНаПроизводство.ВозвратныеОтходы;
			}
			return СтатусыМатериальныхЗатратНаПроизводство.ПустаяСсылка;
		}
		public static byte[] Ключ(this СтатусыМатериальныхЗатратНаПроизводство Значение)
		{
			return Ссылка(Значение).ToByteArray();
		}
		public static Guid Ссылка(this СтатусыМатериальныхЗатратНаПроизводство Значение)
		{
			switch (Значение)
			{
				case СтатусыМатериальныхЗатратНаПроизводство.Собственные: return Собственные;
				case СтатусыМатериальныхЗатратНаПроизводство.ПринятыеВПереработку: return ПринятыеВПереработку;
				case СтатусыМатериальныхЗатратНаПроизводство.ВозвратныеОтходы: return ВозвратныеОтходы;
			}
			return Guid.Empty;
		}
	}
}